<?php

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 * Description of FacturenLijst
 *
 * @author oophp
 */
class FacturenLijst {
    // array met gekoppelde facturItems (instanties van factuuritem)
    private $_facturen = array();
    private $_totaalPrijs = 0 ;
    private $_totaalAantal = 0 ;
    private $_pointer = 0;//zegt waar hij zit
    // -todo;
    public function __construct() {
        $dbConn = DBConn::GET();
        $naam = Sessie::GET('naam');
        $dbSql = "  SELECT idfactuur 
                    FROM factuur
                    WHERE naam ='{$naam}'
                    ORDER BY idfactuur DESC";
        $dbResult = $dbConn->query($dbSql);
        while($dbRij = $dbResult->fetch(PDO::FETCH_ASSOC)){
            $idFactuur = $dbRij['idfactuur'];
            $oFactuur = new FactuurItem($idFactuur);
            array_push($this->_facturen, $oFactuur);
        }
        $this->_bereken();
        //echo'<p>totaal: '.$this->_totaalPrijs.' - aantal: '.$this->_totaalAantal.'</p>';
    }
    private function _bereken(){
        foreach ($this->_facturen as $id=>$oFactuur){
            $this->_totaalAantal += $oFactuur->aantal();
            $this->_totaalPrijs +=$oFactuur->prijs();
        }
    }
    public function totaalPrijs(){
        return $this->_totaalPrijs;
    }
    public function totaalAantal(){
        return $this->_totaalAantal;
    }
    public function setPointer($pointer = 0){
        $this->_pointer = $pointer;
    }
    public function volgende(){
        if(array_key_exists($this->_pointer, $this->_facturen)){
            $oFactuur = $this->_facturen[$this->_pointer];
            $this->_pointer++;
            return $oFactuur;
        }else{
            return false;
        }
    }
    public function vorige(){
        if(array_key_exists($this->_pointer, $this->_facturen)){
            $oFactuur = $this->_facturen[$this->_pointer];
            $this->_pointer++;
            return $oFactuur;
        }else{
            return false;
        }
    }
}

?>
